Bitcoin & Blockchain by Andreas M. Antonopoulos

Bitcoin & Blockchain by Andreas M. Antonopoulos

Autor:Andreas M. Antonopoulos
Die sprache: deu
Format: epub
Herausgeber: dpunkt
veröffentlicht: 2018-11-15T00:00:00+00:00


Abbildung 8-4: Der initiale Handshake zwischen Peers

Sobald eine oder mehrere Verbindungen stehen, sendet der neue Knoten eine addr -Nachricht mit der eigenen IP-Adresse an seine Nachbarn. Die Nachbarn leiten die addr -Nachricht wiederum an ihre Nachbarn weiter und stellen so sicher, dass der neue Knoten bekannter wird und gut verbunden ist. Darüber hinaus sendet die neue Node eine getaddr -Nachricht an die Nachbarn, um eine Liste von IP-Adressen anderer Peers zu erhalten. Auf diese Weise kann eine Node Peers aufspüren, mit denen sie die Verbindung herstellen kann, und gibt ihre Existenz gleichzeitig im Netzwerk bekannt, sodass andere Peers sie finden können. Abbildung 8-5 zeigt das Protokoll zum Aufspüren von Adressen.

Eine Node muss die Verbindung mit verschiedenen Peers herstellen, um mehrere Pfade im Bitcoin-Netzwerk aufzubauen. Pfade sind nicht zuverlässig – Nodes kommen und gehen. Deshalb muss eine Node auch weiterhin neue Nodes aufspüren, um den Verlust alter Verbindungen auszugleichen, aber auch um andere Knoten beim Bootvorgang zu unterstützen. Für das Booten ist nur eine Verbindung nötig, weil der erste Knoten seine Peer-Nodes vorstellen kann und diese Peers wieder andere Peers kennen. Andererseits ist es unnötig und eine Verschwendung von Netzwerkressourcen, die Verbindung zu mehr als einer Handvoll Peers herzustellen. Nach dem Start merkt sich jede Node die letzten erfolgreichen Peer-Verbindungen, sodass sie nach einem Neustart die Verbindung zum alten Peer-Netzwerk schnell wieder herstellen kann. Antwortet keiner der früheren Peers auf die Verbindungsanfrage, kann die Node die Seed-Knoten für einen neuen Bootstrap verwenden.



Download



Haftungsausschluss:
Diese Site speichert keine Dateien auf ihrem Server. Wir indizieren und verlinken nur                                                  Inhalte von anderen Websites zur Verfügung gestellt. Wenden Sie sich an die Inhaltsanbieter, um etwaige urheberrechtlich geschützte Inhalte zu entfernen, und senden Sie uns eine E-Mail. Wir werden die entsprechenden Links oder Inhalte umgehend entfernen.